#pragma once

#include "types.hpp"

namespace perf_boost {
    // Unit utility functions
    char *UnitGetName(uintptr_t *unit);
    C3Vector UnitGetPosition(uintptr_t *unit);
    OBJECT_TYPE_ID UnitGetType(uintptr_t *unit);
    uint64_t UnitGetGuid(uintptr_t *unit);
    uint32_t UnitGetLevel(uintptr_t *unit);
    bool UnitIsDead(uintptr_t *unit);
    bool UnitIsControlledByPlayer(uintptr_t *unit);
    bool UnitIsInCombat(uintptr_t *unit);
    bool UnitCanAttackUnit(uintptr_t *unit1, uintptr_t *unit2);
    bool UnitIsCharmed(uintptr_t *unit);
    bool UnitIsPvpFlagged(uintptr_t *unit);
    uint64_t UnitGetTarget(uintptr_t *unit);
}